#pragma once
typedef unsigned char byte;
typedef unsigned long DWORD;

namespace Graphics
{
	class Color
	{
	private:
		byte m_Red;
		byte m_Green;
		byte m_Blue;
		byte m_Alpha;
	public:
		Color(byte r,byte g,byte b,byte a = 255);
		Color(void);
		~Color(void);
	public:
		// Return the DWORD value, format is 0xAARRGGBB.
		DWORD GetDWORD(void) const;

		// Get/Set the colors
		void Set(byte r,byte g,byte b,byte a = 255);
		
		byte GetRed() const;
		void SetRed(byte red);
		byte GetBlue() const;
		void SetBlue(byte blue);
		byte GetGreen() const;
		void SetGreen(byte green);
		byte GetAlpha() const;
		void SetAlpha(byte alpha);
	};
}